package com.xinhe.web.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinhe.web.entity.OrderItem;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(description = "商品订单查询视图")
public class OrderView {
    @ApiModelProperty("主键")
    private Long id;
    @ApiModelProperty("会员id")
    private Long userId;
    @ApiModelProperty("门店id(当类型为自提才有值)")
    private Long shopId;
    @ApiModelProperty("商家会员id")
    private Long sellerUserId;
    @ApiModelProperty("订单编码")
    private String code;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("订单支付时间")
    private Date payTime;
    @ApiModelProperty("订单总费用")
    private BigDecimal orderFee;
    @ApiModelProperty("订单支付费用")
    private BigDecimal orderPayFee;
    @ApiModelProperty("商品总费用")
    private BigDecimal goodsFee;
    @ApiModelProperty("订单总运费")
    private BigDecimal freightFee;
    @ApiModelProperty("订单优惠费用")
    private BigDecimal preferentialFee;
    @ApiModelProperty("订单商品总数量")
    private Integer orderAmount;
    @ApiModelProperty("订单类型")
    private String type;
    @ApiModelProperty("订单状态")
    private String status;
    @ApiModelProperty("订单配送类型")
    private String distributionType;
    @ApiModelProperty("买家备注")
    private String buyerRemark;
    @ApiModelProperty("买家提醒发货（0,1）")
    private Integer remindSend;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("买家提醒发货时间")
    private Date remindSendTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("发货时间")
    private Date sendTime;
    @ApiModelProperty("备注")
    private String remark;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("下单时间")
    private Date createTime;
    @ApiModelProperty("姓名")
    private String userName;
    @ApiModelProperty("手机号")
    private String mobile;
    @ApiModelProperty("店铺名称")
    private String sellerName;
    @ApiModelProperty("店铺图片")
    private String sellerIconPath;
    //private List<OrderItemListView> orderItems;
    private List<OrderItem> orderItems;
}
